/* ****************************************************************************
 *
 * Copyright (c) Microsoft Corporation. 
 *
 * This source code is subject to terms and conditions of the Microsoft Public License. A 
 * copy of the license can be found in the License.html file at the root of this distribution. If 
 * you cannot locate the  Microsoft Public License, please send an email to 
 * dlr@microsoft.com. By using this source code in any fashion, you are agreeing to be bound 
 * by the terms of the Microsoft Public License.
 *
 * You must not remove this notice, or any other, from this software.
 *
 *
 * ***************************************************************************/

using System.CodeDom.Compiler;

namespace Microsoft.Scripting.Actions {
    #region Generated Dynamic Site Targets

    // *** BEGIN GENERATED CODE ***
    // generated by function: gen_dynamic_site_targets from: generate_dynsites.py

    /// <summary>
    /// Dynamic site delegate type - arity 1
    /// </summary>
    [GeneratedCode("DLR", "2.0")]
    public delegate TRet DynamicSiteTarget<T0, TRet>(CallSite site, T0 arg0);

    /// <summary>
    /// Dynamic site delegate type - arity 2
    /// </summary>
    [GeneratedCode("DLR", "2.0")]
    public delegate TRet DynamicSiteTarget<T0, T1, TRet>(CallSite site, T0 arg0, T1 arg1);

    /// <summary>
    /// Dynamic site delegate type - arity 3
    /// </summary>
    [GeneratedCode("DLR", "2.0")]
    public delegate TRet DynamicSiteTarget<T0, T1, T2, TRet>(CallSite site, T0 arg0, T1 arg1, T2 arg2);

    /// <summary>
    /// Dynamic site delegate type - arity 4
    /// </summary>
    [GeneratedCode("DLR", "2.0")]
    public delegate TRet DynamicSiteTarget<T0, T1, T2, T3, TRet>(CallSite site, T0 arg0, T1 arg1, T2 arg2, T3 arg3);

    /// <summary>
    /// Dynamic site delegate type - arity 5
    /// </summary>
    [GeneratedCode("DLR", "2.0")]
    public delegate TRet DynamicSiteTarget<T0, T1, T2, T3, T4, TRet>(CallSite site, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4);

    /// <summary>
    /// Dynamic site delegate type - arity 6
    /// </summary>
    [GeneratedCode("DLR", "2.0")]
    public delegate TRet DynamicSiteTarget<T0, T1, T2, T3, T4, T5, TRet>(CallSite site, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5);

    /// <summary>
    /// Dynamic site delegate type - arity 7
    /// </summary>
    [GeneratedCode("DLR", "2.0")]
    public delegate TRet DynamicSiteTarget<T0, T1, T2, T3, T4, T5, T6, TRet>(CallSite site, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6);

    /// <summary>
    /// Dynamic site delegate type - arity 8
    /// </summary>
    [GeneratedCode("DLR", "2.0")]
    public delegate TRet DynamicSiteTarget<T0, T1, T2, T3, T4, T5, T6, T7, TRet>(CallSite site, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7);

    /// <summary>
    /// Dynamic site delegate type - arity 9
    /// </summary>
    [GeneratedCode("DLR", "2.0")]
    public delegate TRet DynamicSiteTarget<T0, T1, T2, T3, T4, T5, T6, T7, T8, TRet>(CallSite site, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8);


    // *** END GENERATED CODE ***

    #endregion
}
